package com.lfs.admin.model.dto;

import lombok.Getter;
import lombok.Setter;

import java.util.List;

/**
 * 自动标题入参
 **/
@Getter
@Setter
public class SpontaneousTitleDto{

            // "crossBorderTitleContentType": "0" ?

    // 数据包ID
    Integer repositoryId;

    // 标题生成方式 1-标题词优先 2-型号错词优先
    Integer makeType;

    // 多型号标题制作（开启该功能,系统将会读取匹配数据中的所有型号用来制作标题，该功能还属于测试阶段,开启后请仔细检查预览中的数据再进行提交!）
    boolean moreModelMake;

    // 多型号排序规则1-根据产品型号顺序 2-首型号固定，其他型号随机 3-随机排放
    Integer morePhoneOrderType;

    // 标题前缀
    String suffix;

    // 标题后缀
    String prefix;

    // 品牌名称大写
    boolean brandCapital;

    // 型号名称全部大写
    boolean modelNameAllCapital;

    // 品牌和型号之间加入空格
    boolean brandToModelJoinBlank;

    // 型号格式化（开启此功能后讲会对型号进行格式化,主要体现在型号首字母大写,5G/4G等型号标识会加入空格等）
    boolean modelFormatting;

    // 加入产品名称 -1-不加入 1-加入至标题前 2-加入至标题后 3-随机加入
    Integer addProductNameType;

    // 首个型号随机规则 -1-不随机 1-按型号随机 2-按型号+错词随机 3-按我的词库定义的型号随机
    Integer firstModelShuffleType;

    // 免型号匹配（免型号匹配将会忽略系统词库型号的匹配,匹配数据将直接变更为对应型号,被生成的标题中将不在包含型号错词,将全部由自定义词语/类型词进行随机组合! 开启该功能后诸多功能将会失效!）
    boolean noMatching;

    // 标题优先添加入网型号（开启该功能,系统会优先读取您自定义的对应设备型号,若没有则会读取系统录入的设备型号。该词将会优先出现在标题之中。）
    boolean deviceName;

    // 加入父品牌（荣耀、真我、iqoo等子品牌型号数据将会在标题型号的前缀中加入父品牌华为、oppo、vivo等）
    boolean addParentBrand;

    // 去除重复品牌词
    boolean wipeRepetitionBrandWord;

    // 系统自动补词（如果开启此功能,在标题低于平台对应的字符数时,将使用系统词库进行自动补充!）
    boolean autoFillWord;

    // 型号后缀（型号后缀为数据匹配成功后,正常型号后面出现的第一个词语,如果不填默认则为手机壳或钢化膜）
    String modelSuffix;

    // 多型号分割符（若标题存在多个型号,系统将会对多个型号进行分割组合,例如:iphone11/13/13ProMax/14Pro 等进行这样的组词）
    String morePhoneSplitSymbol;

    // 顺序随机（自定义词会优先于下方选择的词出现在标题之中,默认为随机顺序,若想按照顺序拼接请关闭旁边的 顺序随机 的开关）
    boolean customWordsRandom;

    // 品牌所有型号加'适用':
    String brandPreventIllegal;

    // 型号加入中文品牌（开启此功能后,如果型号存在中文品牌则会加入到标题中,例如iPhone的中文品牌为苹果,realme为真我）
    boolean joinChineseBrand;

    // 全自动构成标题（如果开启此功能,则选择或自己定义的词语都将会失效,将由系统全自动进行解析匹配,建议不使用此功能!!!）
    boolean autoTitleAnalysis;

    // 词语类型
    String titleTypeEnum;

    // 标题词设置
    WordLibraryDto wordLibrary;

}
